package com.dtx.iterator.gongyongde;

/**
 * 我们声明了两个方法，及判断是否存在下一个元素的hasNext方法，和获取下一个元素的next方法。<br>
 * hasNext方法的返回值是boolean类型的，其原因好容易理解。当集合中存在下一个元素时，该方法返回true；当集合中不存在下一个元素时<br>
 * 即遍历至集合末尾时，该方法返回false。hasNext方法主要用于循环终止条件。<br>
 * 这里有必要说明一下next方法。该方法返回类型是Object，这表明该方法返回的是集合中的一个元素。但是，next方法的作用并非仅仅如此。<br>
 * 为了能够在下次调用next方法时正确地返回下一个元素，该方法中还隐含这将迭代器移动至下一个元素的的处理。说"隐含"，是因为Iterator<br>
 * 只知道方法名。想要知道next方法到底进行了什么处理，还需要看下实现了Iterator接口的类(BookShelfIterator)。这样，我们才能
 * 看懂next方法的作用
 */
public interface Iterator {

    boolean hasNext();

    Object next();
}
